﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Text;
using Microsoft.Win32;
namespace Congducsan
{
    public partial class FrmDinhdang : Form
    {
        public FrmDinhdang()
        {
            InitializeComponent();
        }
        private Dictionary<int, Color> dicColor;
        private void FrmDinhdang_FormClosing(object sender, FormClosingEventArgs e)
        {
            DradApplication.DradApp.FormMain.Show();
        }
        
        private void FrmDinhdang_Load(object sender, EventArgs e)
        {
            loadFont(CmbFontNameG);// load font của hệ thống vào cbbFontNameG
            loadFont(CmbFontNameT);// load font của hệ thống vào cbbFontNameT

            //Khởi tạo dữ liệu cho txtFontG
            txtFontG.Items.Insert(0, "1");
            txtFontG.Items.Insert(1, "1.5");
            txtFontG.Items.Insert(2, "1.7");
            txtFontG.Items.Insert(3, "1.8");
            txtFontG.Items.Insert(4, "2");
            txtFontG.Items.Insert(5, "2.5");
            txtFontG.Text = "2";
            //Khởi tạo dữ liệu cho txtFontT
            txtFontT.Items.Insert(0, "2.5");
            txtFontT.Items.Insert(1, "3");
            txtFontT.Items.Insert(2, "3.5");
            txtFontT.Items.Insert(3, "4");
            txtFontT.Items.Insert(4, "4.5");
            txtFontT.Items.Insert(5, "5");
            txtFontT.Text = "3";

            //Khởi tạo dữ liệu cho dicColor
            dicColor = new Dictionary<int, Color>();
            dicColor.Add(0, Color.Red);
            dicColor.Add(1, Color.Yellow);
            dicColor.Add(2, Color.Green);
            dicColor.Add(3, Color.Cyan);
            dicColor.Add(4, Color.Blue);
            dicColor.Add(5, Color.Magenta);
            dicColor.Add(6, Color.White);
            dicColor.Add(7, Color.Purple);

            // Load dữ liệu mặc định trong Registry
            loadDefaultSetting();
       
        }
        private void loadFont(ComboBox cb)
        {
            InstalledFontCollection iFC = new InstalledFontCollection();
            for (int i = 0; i < iFC.Families.Length; i++)
            {
                cb.Items.Add(iFC.Families[i].Name);           
            }
        }
        private void loadDefaultSetting()
        {
            RegistryKey regKey = Registry.CurrentUser;
            RegistryKey keyTest=regKey.OpenSubKey("Software\\HaithanhSoft\\Drad2012\\Congducsan");
            if (keyTest != null)
            {

                regKey = regKey.CreateSubKey("Software\\HaithanhSoft\\Drad2012\\Congducsan");
                //load dữ liệu vào CmbFontNameG
                CmbFontNameG.Text = regKey.GetValue("CurrFontNote").ToString();
                //load dữ liệu vào txtFontT
                txtFontG.Text = regKey.GetValue("CurrFontSizeNote").ToString();
                //load dữ liệu vào CmbFontNameT
                CmbFontNameT.Text = regKey.GetValue("CurrFontText").ToString();
                //load dữ liệu vào txtFontT
                txtFontT.Text = regKey.GetValue("CurrFontSizeText").ToString();
                //load dữ liệu vào comboBox màu
                Combo0.Text = regKey.GetValue("CurrColorDrag00").ToString();
                Combo1.Text = regKey.GetValue("CurrColorDrag01").ToString();
                Combo2.Text = regKey.GetValue("CurrColorDrag02").ToString();
                Combo3.Text = regKey.GetValue("CurrColorDrag03").ToString();
                Combo4.Text = regKey.GetValue("CurrColorDrag04").ToString();
                Combo5.Text = regKey.GetValue("CurrColorDrag05").ToString();
            }
        }


        private void Combo0_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop00.BackColor = dicColor[Combo0.SelectedIndex];
        }

        private void Combo1_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop01.BackColor = dicColor[Combo1.SelectedIndex];
        }

        private void Combo2_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop02.BackColor = dicColor[Combo2.SelectedIndex];
        }

        private void Combo3_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop03.BackColor = dicColor[Combo3.SelectedIndex];
        }

        private void Combo4_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop04.BackColor = dicColor[Combo4.SelectedIndex];
        }

        private void Combo5_SelectedIndexChanged(object sender, EventArgs e)
        {
            lbLop05.BackColor = dicColor[Combo5.SelectedIndex];
        }

        // gọi sự kiện click của button Định dạng
        private void OK_Click(object sender, EventArgs e)
        {
            RegistryKey regKey = Registry.CurrentUser;
            regKey = regKey.CreateSubKey("Software\\HaithanhSoft\\Drad2012\\Congducsan");
            regKey.SetValue("CurrFontNote", CmbFontNameG.Text);
            regKey.SetValue("CurrFontSizeNote", txtFontG.Text);
            regKey.SetValue("CurrFontText", CmbFontNameT.Text);
            regKey.SetValue("CurrFontSizeText", txtFontT.Text);
            regKey.SetValue("CurrColorDrag00", Combo0.Text);
            regKey.SetValue("CurrColorDrag01", Combo1.Text);
            regKey.SetValue("CurrColorDrag02", Combo2.Text);
            regKey.SetValue("CurrColorDrag03", Combo3.Text);
            regKey.SetValue("CurrColorDrag04", Combo4.Text);
            regKey.SetValue("CurrColorDrag05", Combo5.Text);
            regKey.Close();
            MessageBox.Show("OK", "Thông báo!", MessageBoxButtons.OK);
        }

        // sự kiện click của button Đóng
        private void Cancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        // sự kiện resize form
        private void FrmDinhdang_Resize(object sender, EventArgs e)
        {
            this.Size = new Size(392, 523);
        }

    }
}
